package com.ftg.learn.backlearn.oo;

/**
 * 人
 * 新建一个java就是一个抽象 ，就是一个封装
 * 抽象 这个类，这个模板 具化话的过程我们叫实例化
 * *.java 就是从代码级别封装 (源文件)
 *  jvm javac 命令 （编译器）
 *    完整命令 “ javac Ren.java
 * jvm 只能执行*.class (目标文件|字节码文件)
 *
 * jvm java 命令 (执行器)
 *    java Ren.class 运行
 *    -- 找的是 主方法 （main）
 *     -- 代码体 {
 *         Student t = new Student();
 *     }
 *
 * *.class - 抽象，封装
 * new 就是产生的对象（）  实例化
 *
 * Ren r = new Ren();
 *
 *
 * @author kangjx
 * @version 1.0
 * @date 2023/3/8 下午5:10
 */
public class Ren {

    public static void main(String[] args) {
        Ren.a--;
        Ren r = new Ren();
        System.out.println(r.a--);
        System.out.println(r.b--);

        Ren r1 = new Ren();
//        a叫类变量 属于类的，有实例改变以后 类里面变
        System.out.println(r1.a);
//        b 叫实例变量 r1.b
        System.out.println(r1.b);
        Ren r2 = new Ren();
        System.out.println(r2.a);

        System.out.println(Ren.a);
    }

    public static int a = 9;

    public int b = 13;

    /**
     * 构造方法  构造器  构造函数
     * 无参构造方法
     *  执行时候 ： 实例化过程
     *  new ren();
     *  反射与会走
     */
    public Ren(){
        System.out.println("有一个人出生了");
    }
//    [private public protected default]
    private String times;
    private String natual;
    private String job;

    public String getTimes() {
        return times;
    }

    public void setTimes(String times) {
        this.times = times;
    }

    public String getNatual() {
        return natual;
    }

    public void setNatual(String natual) {
        this.natual = natual;
    }

    public String getJob() {
        return job;
    }

    public void setJob(String job) {
        this.job = job;
    }

    /**
     * access method : 三个属性可以 访问的方法
     * get/set
     */



    public void getFish(){
        System.out.println("捕鱼");
    }

}
